<?php 
 header("Content-type:text/html;charset=utf-8");
require_once('./system/dbConn.php');
//连接数据库
connect();
//使用$_POST数组获取表单中输入的数据
session_start();
  $u=$_SESSION["user"];
  $sql1="select * from users where uname='$u'";
  $r=mysql_query($sql1);
  $row=mysql_fetch_assoc($r);
  $id=$row['uid'];
  //echo $id;
  // $id=$_POST['uid'];
 // $uname = trim($_POST['uname']);
  $password=$_POST['password'];
 $birthdate=$_POST['birthdate'];
  $gender = $_POST['gender'];
  $hobby = implode($_POST['hobby'],',');
  //将数组转换成字符串
  $degree = $_POST['degree'];
  $intro = $_POST['intro'];
  //var_dump($_POST);
  //var_dump($_FILES['pic']);

//上传文件错误的判定
if($_FILES["pic"]["error"]>0)
{
  switch($_FILES["pic"]["error"]){
    case 1:echo"文件尺寸超过了配置文件的最大值"; exit;
    case 3:echo"部分文件上传";exit;
    case 4:echo"没有选择头像文件！";
    //如果没选择文件，则直接更新其他数据
    $sql="update users set uname='{$u}',birthdate='{$birthdate}',gender={$gender},hobby='{$hobby}',degree={$degree},intro='{$intro}'where uid={$id}";
    break;
    default:echo"未知错误";exit;
  }
}else{//上传文件，删除原来的头像，更新数据库
  //获取文件名
  $suffix=strrchr($_FILES["pic"]["name"],'.');
  //获取.在文件名中最后一次出现
    //echo $suffix;
  //判断文件类型是否图片
$allowtype=array("jpg","jpeg","png","gif","Bmp","flv");
if(!in_array(ltrim($suffix,'.'), $allowtype))
{
  echo"文件类型为$suffix!<br/>";
  echo"文件类型不正确！只能选择扩展名为jpg,jpeg,png,gif,Bmp,flv类型的文件！";
  exit;
}
//指定在服务器上的文件存放路径和文件名
$filepath="images/";
$newname=date("YmdHis").rand(100,999).$suffix;
//echo $filepath.$newname.'<br/>';
//上传文件，如果上传成功，则将用户信息修改到数据库，否则提示“上传失败”
if(!move_uploaded_file($_FILES["pic"]["tmp_name"], 
  $filepath.$newname)){
  die('图片上传失败');
}
else{
  //获取头像文件的文件名
  //编写sql语句
  $sql="select * from users where uid={$id}";
  $result=mysql_query($sql);
  $row=mysql_fetch_assoc($result);
  $filename=$filepath.$row["pic"];
  //删除原来的头文件
  if(file_exists($filename))  unlink($filename);
  //编写sql语句
    $sql="update users set uname='{$u}',password='{$password}',birthdate='{$birthdate}',gender={$gender},hobby='{$hobby}',degree={$degree},intro='{$intro}',pic='{$newname}'where uid={$id}";
    }
}
//执行SQL语句
//echo $sql;
$result=mysql_query($sql) or die("sql={$sql},更新失败！<br/>".mysql_error());
//判断是否插入成功
$num=mysql_affected_rows();
if($num!=1){
  echo"更新失败!<br/>";
  echo"返回<a href='userList.php'>返回</a>";
}else{
  // redirect('userList.php','更新成功！');
  session_start();
$_SESSION["user"]=$u;
header("location:index.php?re=修改成功");
}
 ?>

